Remote Config force_update 플래그 기반 업데이트 팝업 제어#376
Conversation
- force_update가 true이고 버전이 다를 때만 강제 업데이트 팝업 표시 - 기본값 false — 불필요한 팝업으로 사용성 저해 방지 - 팝업은 외부 터치 차단(setCancelable false) 유지
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (4)
📝 WalkthroughWalkthroughA new Remote Config boolean flag ( Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
app/src/main/java/com/runnect/runnect/presentation/MainActivity.kt (1)
139-141: Define an explicit local default forforce_update.The new condition is good, but
force_updateshould also be included insetDefaultsAsyncso default behavior is deterministic even before backend config is available.♻️ Proposed change
setDefaultsAsync( //remote config 기본값 설정 mapOf(REMOTE_KEY_APP_VERSION to getString(R.string.default_version)) + + mapOf(REMOTE_KEY_FORCE_UPDATE to false) )🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@app/src/main/java/com/runnect/runnect/presentation/MainActivity.kt` around lines 139 - 141, The remote `force_update` key (REMOTE_KEY_FORCE_UPDATE) lacks an explicit local default, so add it to the Remote Config local defaults used in setDefaultsAsync so behavior is deterministic before backend config loads; locate the code where setDefaultsAsync is called (e.g., in MainActivity initialization or in the Remote Config setup function), add an entry mapping REMOTE_KEY_FORCE_UPDATE to a boolean default (false or true per product decision), and ensure the code that reads val forceUpdate = getBoolean(REMOTE_KEY_FORCE_UPDATE) will see that default value immediately.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@app/src/main/java/com/runnect/runnect/presentation/MainActivity.kt`:
- Around line 139-141: The remote `force_update` key (REMOTE_KEY_FORCE_UPDATE)
lacks an explicit local default, so add it to the Remote Config local defaults
used in setDefaultsAsync so behavior is deterministic before backend config
loads; locate the code where setDefaultsAsync is called (e.g., in MainActivity
initialization or in the Remote Config setup function), add an entry mapping
REMOTE_KEY_FORCE_UPDATE to a boolean default (false or true per product
decision), and ensure the code that reads val forceUpdate =
getBoolean(REMOTE_KEY_FORCE_UPDATE) will see that default value immediately.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 3eb3e7d7-afb1-4087-8cc9-3a7d30ed69d1
📒 Files selected for processing (1)
app/src/main/java/com/runnect/runnect/presentation/MainActivity.kt
- local.properties에 REMOTE_KEY_FORCE_UPDATE 추가 - build.gradle에 buildConfigField 등록 - MainActivity에서 상수 제거, BuildConfig 참조로 변경
작업 배경
force_update파라미터로 팝업 노출 여부를 서버에서 제어할 수 있도록 개선변경 사항
MainActivity.ktforce_update == true && 버전 다름조건일 때만 팝업 표시MainActivity.ktREMOTE_KEY_FORCE_UPDATE상수 추가영향 범위
force_update = false(기본값) → 팝업 미노출force_update = true+ 버전 불일치 → 강제 업데이트 팝업 (외부 터치 차단)Test Plan
force_update = false시 팝업 미노출 확인force_update = true+ 구버전 시 팝업 노출 확인🤖 Generated with Claude Code
Summary by CodeRabbit